# Необходимо ввести целое число (возможно, отрицательное) и посчитать сумму его цифр в десятичной записи; вывести как целое.
# in:  -12345
# out: 15


.text
	
	li s0 0 		# счетчик суммы цифр
	li s1 0x0A		# код конца строки
	li s2 9			# максимальное значение цифры

	
read_char:
	li a7 12		# системный вызов считывания одного символа
	ecall
	beq a0 s1 out_num	# если конец строки
	
	addi a0 a0 -0x30	# вычитаем ASCII значение кода символа "0" и добавляем
	bltz a0 read_char	# игнорируем символ с кодом меньше 30
	bgt  a0 s2 read_char	# игнорируем любые смволы не являющиеся цифрами
	add  s0 s0 a0
	b read_char
	
out_num:
	mv a0 s0		# печать целого числа из a0
	li a7 1
	ecall
	
	li a7 10		# останов
	ecall	
	